package kubayaxi.video.service.base.common.exhandler;

import kubayaxi.video.service.base.common.exception.KubayaxiException;
import kubayaxi.video.service.base.common.response.ResponseResult;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.RestControllerAdvice;

/**
 * @program: l_music
 * @description:
 * @author: Mr.lin
 * @create: 2022-09-02 10:24
 **/
// @RestControllerAdvice：加强controller注解，注释的类中被某些注解修饰的方法会被作用到全部的controller中，其中就包括@ExceptionHandler
// @ExceptionHandler：处理异常，当遇到BussinessException时就会直接返回给前端fail，Asserts.notNull,Asserts.isTrue不满足要求就是返回的BussinessException
@RestControllerAdvice
public class GlobalExceptionHandler {

	/**
	 * 捕获业务异常
	 */
	@ExceptionHandler(KubayaxiException.class)
	public ResponseResult<Void> KubayaxiExceptionHandle(KubayaxiException ke) {
		return ResponseResult.failed(ke.getCode(),ke.getMsg());
	}
}
